The World Wide Web has expanded to provide numerous web services to consumers. The web services may be provided by a web application which uses multiple services and applications to handle a transaction. The applications may be distributed over several machines, making the topology of the machines that provide the service more difficult to track and monitor.
Monitoring a web application helps to provide insight regarding bottle necks in communication, communication failures and other information regarding performance of the services that provide the web application.
Web application monitoring may include modifying applications in order to determine more information about how they are performing. When dealing with a dynamic set of functions to instrument, modifying applications without introducing latency and other performance issues can be very difficult. What is needed is an improved method for modifying applications to be monitored.